#ifndef __GDT_H__
#define __GDT_H__

struct gdt_descripor {
	unsigned short size;
	unsigned int offset;
}__attribute__((packed));

struct gdt_entry {
	unsigned short limit;
	unsigned short base1;
	unsigned char base2;
	unsigned char access;
	unsigned char flags;
	unsigned char base3;
}__attribute__((packed));

extern void gdt_init();
extern void set_gdt();
extern void build_gde(unsigned short entry, unsigned long base, unsigned long limit, unsigned char access, unsigned char flags);

#endif
